$NG.AllReady(function (
    page,
    {
        useValuesChange,
        useClick,
        useUpdateRow,
        useUpdateRows,
        useDataIndexChange,
        useBeforeClick,
        useImpPullData
    }
) {
    let Flag = false;
    let lock = true
    let total = 0
    let totalprice = null
    let price = 0
    let CRMlock = 2
    var mstform = $NG.getCmpApi("p_form_zzcp_outbount_m");
    var dgrid = $NG.getCmpApi("p_form_zzcp_outbount_d"); //获取表体数据
    let user = $NG.getUser();

    const gridToolbar = $NG.getCmpApi("toolbar_p_form_zzcp_outbount_d");
    gridToolbar.getItem("imp").setProps({ children: "引用设备清单明细" });

    // const saveBtn = ["save","check","verify"]
    // saveBtn.forEach(item=>{
    //     useBeforeClick(()=>{
    //         return saveIsError()
    //     },item)
    // })

    // useBeforeClick(()=>{
    //     const phone = mstform.getItem("u_sl_phone").getValue()
    //     const regex = /^1[3-9]\d{9}$/;
    //     if(!regex.test(phone)){
    //         $NG.alert("收料人手机号输入有误！")
    //         return  false
    //     }
    //     if(window._catch_saveLock){
    //          $NG.alert("当前项目没有仓库，请创建！")
    //          return false
    //     }
    //     const temp = dgrid.getRows().filter(item=>{
    //         console.log(`当前行`,item.u_item_no_EXName,item.u_item_no_EXName.includes('信号机'));
    //         if(item.u_item_no_EXName.includes('信号机')){
    //             return true
    //         } else {
    //             return false
    //         }
    //     })
    //     if(temp.length > 1){
    //         $NG.alert("申请明细中不准出现2条或2条以上的 “信号机” 名称的物料！")
    //         return false
    //     }

    // },"save")


    //init

    setTimeout(() => {
        skamt()
    }, 200)

    // 校验设备清单回款金额是否校验通过
    function isSbqdHkLock() {
        try {
            const total_amt = dgrid.getRows().reduce((value, item) => {
                value += (Number(item.u_amt_vat) || 0) + (Number(item.u_amt_vat_fc) || 0)
                return value
            }, 0)
            console.log(`debug 汇款金额校验测试`, total_amt, totalprice, mstform.getItem('u_xmywlx').getValue());
            if (mstform.getItem('u_xmywlx').getValue() == '8570000000000350') {
                if ( total_amt > (Number(totalprice) || 0)) {
                    $NG.alert('设备清单价税合计的总额大于该项目的回款总金额，将不允许保存')
                    return false
                } else {
                    return true
                }
            }
        } catch (e) {
            $NG.alert('校验设备清单价税合计的于项目的回款总金额时客户端发生致命错误，请检查！')
            return false
        }
    }

    useBeforeClick(() => {
        const phone = mstform.getItem("u_sl_phone").getValue()
        const regex = /^1[3-9]\d{9}$/;
        if (!regex.test(phone)) {
            $NG.alert("收料人手机号输入有误！")
        }
        if (window._catch_saveLock) {
            $NG.alert("当前项目没有仓库，请创建！")
            return false
        }
        return regex.test(phone);
    }, "check")

    // function saveIsError(){
    //     //校验信号机SC
    //     const rows1 = dgrid.getData()
    //     const error = rows1.reduce((value,item,index)=>{
    //         if(item.u_item_no_EXName && item.u_item_no_EXName.includes("信号机")){
    //             value.push(index+1)
    //         }
    //         return value
    //     },[])
    //     if(error.length > 1){
    //         $NG.alert("申请明细中不准出现2条或2条以上的 “信号机” 名称的物料！")
    //         return false
    //     } else {
    //         return true
    //     }
    // }

    {
        /**
         *@author 崔赛豪
         * @description 保存数据处理数据 多层封装方便以后扩展其他功能 保证容错率 不要动
         * @param {string} k key
         * @param {any} v value
         * @param {any} t type
         */
        function saveData(k, v) {
            localStorage.setItem(k, JSON.stringify(v));
        }

        function getData(k) {
            const storedValue = localStorage.getItem(k);
            if (storedValue) {
                return JSON.parse(storedValue);
            }
            return null;
        }
        function clearData(k) {
            localStorage.removeItem(k);
        }
        function AsyncTypeData(k, t, v) {
            switch (t) {
                case "save":
                    saveData(k, v);
                    break;
                case "get":
                    getData(k);
                    // console.log(getData(k), "getData(k)");
                    break;
                case "clear":
                    clearData(k);
                    break;
                default:
                    console.log("Invalid t");
            }
        }
        AsyncTypeData("ArrData", "get");
        function fun() {
            setTimeout(() => {
                console.log("111111111");
                // if (!Flag) {
                // 	fun();
                // }
                let rows = $NG.getCmpApi("p_form_zzcp_outbount_d").getRows();
                // rows.forEach((item, index) => {
                // 	getData("ArrData").forEach((i, v) => {
                // 		// console.log(i, v, "i", "v");
                // 		// console.log(item, index, "item", "index");
                // 		if (!i.checked && item.u_sbqdbm == i.u_equipment_list_no) {
                // 			dgrid.deleteRows(index); //删除指定行
                // 		} else {
                // 		}
                // 	});
                // });
                rows.forEach((rowItem) => {
                    computedV1(rowItem);
                    computedV2(rowItem);
                });
                dgrid.refreshView();
            }, 300);
        }
        // fun();
    }
    let obj;
    /**
     *@default: 初始化
     */
    if ($NG.getCmpApi("p_form_zzcp_outbount_m")) {
        // getPtInfoByPhid();
        cntMFilter();

        if (user) {
            console.log(user.userName);
            console.log(user.userID);
            console.log(page.oType);

            if (page.oType == 'add') {
                console.log("新增u_ll_person"); //新增 修改 查看 工作流
                $NG.execServer("GetHrInfo", { id: user.userID }, function (res) {
                    const datas = JSON.parse(res.data)[0].extendObjects;
                    console.log(datas, "GetHrInfo");
                    //帮助字段赋值
                    $NG.updateState((updater) => {
                        // 帮助字段
                        updater.data.p_form_zzcp_outbount_m.setProps({
                            u_ll_person: {
                                value: datas.hrid,
                                label: user.userName,
                            },
                        });
                    });
                });
            }
        }
    }
    /**
     *@license://表头字段变化逻辑END	//表头字段变化逻辑BEGIN
     */
    //  try{
    //     $NG.updateUI((updater) => {
    // 	updater.form.p_form_zzcp_outbount_m.u_sl_person.setProps({
    // 		onBeforeOpen: async () => {
    // 			var phid_pc = $NG.getCmpApi('p_form_zzcp_outbount_m').getItem('phid_pc').getValue();
    // 			if (!phid_pc) {
    // 				$NG.alert("请先选择项目");
    // 				return false;
    // 			} else {
    // 				return true;
    // 			}
    // 		},          
    // 	  clientSqlFilter: `phid_pc = ${mstform.getItem("phid_pc").getValue()}`, //过滤条件
    // 	});

    // });
    //  }catch(err){}
    useValuesChange(({ args }) => {
        mstform.getItem("u_cnt_no").setValue(""); //切换项目清楚合同名称
        getPtInfoByPhid();
        cntMFilter();
        dgrid.clearRows();
        // $NG.updateUI((updater) => {
        // 	// $NG.getPageUI();
        // 	// 根据组件目录设置路径，可能存在
        // 	// fieldSetForm
        // 	// PCFieldSetPanelGroup[i][field]
        // 	updater.form.p_form_zzcp_outbount_m.u_sl_person.setProps({
        // 		onBeforeOpen: async () => {
        //             var phid_pc = $NG.getCmpApi('p_form_zzcp_outbount_m').getItem('phid_pc').getValue();
        //             if (!phid_pc) {
        //                 $NG.alert("请先选择项目");
        //                 return false;
        //             } else {
        //                 return true;
        //             }
        //         },
        // 		// ...{
        // 		// 	clientSqlFilter: `phid_pc = ${mstform.getItem("phid_pc").getValue()}`, //过滤条件
        //         // },
        // 	  // hidden: true, //隐藏
        // 	  // required: true, //必输
        // 	  // disabled: true, //只            
        // 	  clientSqlFilter: `phid_pc = ${mstform.getItem("phid_pc").getValue()}`, //过滤条件

        // 	  // placeholder: "请选择", //输入框字段加提示语
        // 	  // data: [{ value: "01", label: "实施外包用工" }], //下拉过滤
        // 	});

        // });
        isCalculating()
        skamt()
        if (mstform.getItem('u_xmywlx').getValue() == '8570000000000350') {
            if (totalprice != null && totalprice < total + price) {
                $NG.alert('设备清单价税合计的总额大于该项目的回款总金额，将不允许保存')
                lock = false
            }
        }
    }, "p_form_zzcp_outbount_m.phid_pc");
    /**
     *@license://检测领料人
     */
    useValuesChange(({ args }) => {
        console.log(args[0].u_ll_person.origin.Dept_Name, "检测领料人");
        console.log(args[0].u_ll_person.origin.Dept, "检测领料人");
        $NG.updateState((updater) => {
            updater.data.p_form_zzcp_outbount_m.setProps({
                u_ll_dept: {
                    label: args[0].u_ll_person.origin.Dept_Name,
                    value: args[0].u_ll_person.origin.Dept,
                },
            });
        });
    }, "p_form_zzcp_outbount_m.u_ll_person");
    /**
     *@license://检测收料人
     */
    // useValuesChange(({ args }) => {
    // 	console.log(args[0].u_sl_person.origin.MobileNumber, "检测收料人");
    // 	$NG.updateState((updater) => {
    // 		updater.data.p_form_zzcp_outbount_m.setProps({
    // 			u_sl_phone: args[0].u_sl_person.origin.MobileNumber,
    // 		});
    // 	});
    // }, "p_form_zzcp_outbount_m.u_sl_person");

    useValuesChange(({ args }) => {
        console.log(mstform.getItem('u_xmywlx').getValue());
        console.log(mstform.getItem('phid_pc').getValue());
        skamt()
        if (mstform.getItem('u_xmywlx').getValue() == '8570000000000350') {
            if (totalprice != null && total + price > totalprice) {
                $NG.alert('设备清单价税合计的总额大于该项目的回款总金额，将不允许保存')
                lock = false
            }
        }
    }, "p_form_zzcp_outbount_m.u_xmywlx");

    function skamt(params) {
        let lx = mstform.getItem('u_xmywlx').getValue()
        if (params) {
            lx = params
        }
        console.log(`开始执行`, mstform.getItem('phid_pc').getValue(), lx);
        if (!mstform.getItem('phid_pc').getValue()) return
        if (lx == '8570000000000350') {
            console.log(`开始查询相关金额`,);
            $NG.execServer("searchZZ", { pc: mstform.getItem("phid_pc").getValue() }, function (res) {
                console.log(res);

                if (res.count == 0) return
                const datas = JSON.parse(res.data)[0].extendObjects;
                console.log(datas, "searchZZ");

                totalprice = (Number(datas.sk_amt) || 0);

            });
            $NG.execServer("searchZZ2", { pc: mstform.getItem("phid_pc").getValue() }, function (res) {
                console.log(res);

                if (res.count == 0) return
                const datas = JSON.parse(res.data)[0].extendObjects;
                console.log(datas, "searchZZ");

                price = datas.u_amt_vat_fc;

            });
        }
    }
    /**
     *@license:监听服务于工程表 1.累计分包金额
     */
    useImpPullData(function ({ args }) {
        // if(page.oType != 'add') return
        // 直接操作导入数据数组
        for (let i = 0; i < dgrid.getRows().length; i++) {
            if (dgrid.getRows()[i].u_item_no_EXName && dgrid.getRows()[i].u_item_no_EXName.includes('信号机')) {
                $NG.alert('申请明细中不准出现2条或2条以上的 “信号机” 名称的物料')
                return false
            }

        }
        const importData = args[0].defaultData;
        console.log("原始导入数据:", importData);

        // 查找第一条信号机数据
        let firstSignalMachine = [];

        for (const item of importData) {
            if (item.u_item_no_EXName && item.u_item_no_EXName.includes('信号机')) {
                firstSignalMachine.push(item);
                // 找到第一条就停止
            }
        }
        if (firstSignalMachine.length > 1) {
            $NG.alert('申请明细中不准出现2条或2条以上的 “信号机” 名称的物料')
        }
        firstSignalMachine = firstSignalMachine[0]
        console.log(`信号机数量`, firstSignalMachine);
        // 如果找到信号机数据
        if (firstSignalMachine) {
            console.log("发现信号机数据，只保留一条");

            // 清空原始数组
            importData.splice(0, importData.length);

            // 只添加第一条信号机数据
            importData.push(firstSignalMachine);

            console.log("处理后的导入数据:", importData);
        } else {
            console.log("未发现信号机数据，保持原数据不变");
        }
    }, 'p_form_zzcp_outbount_d');
    function filterSignalMachineRows(rows) {
        let firstSignalMachine = null;
        let num = 0
        for (const item of rows) {
            if (item.u_item_no_EXName && item.u_item_no_EXName.includes('信号机')) {
                num++
                firstSignalMachine = item;
                break;
            }
        }
        if (num > 1) {
            $NG.alert('申请明细中不准出现2条或2条以上的 “信号机” 名称的物料')
        }
        if (firstSignalMachine) {
            return [firstSignalMachine];
        }
        return rows;
    }

    let rows1 = $NG.getCmpApi('p_form_zzcp_outbount_d').getData();
    console.log(rows1);
    const originalData = [...rows1];
    //  console.log("所有属性:", Object.keys(rows1[0]));
    setTimeout(() => {
        if (page.oType != 'add') return
        dgrid.clearRows();
        // console.log(rows1);

    }, 300);
    setTimeout(() => {
        if (page.oType != 'add') return
        const filteredRows = filterSignalMachineRows(originalData);
        filteredRows.forEach((item, index) => {
            computedV1(item);
            computedV2(item);
            if (item.u_prc_vat_fc && item.u_qty) {
                total += item.u_prc_vat_fc * item.u_qty; //汇总数据
                console.log(total);

            }
        });
        console.log(filteredRows);
        dgrid.addRows(filteredRows)
    }, 400);

    console.log(total, 'total');

    if (mstform.getItem('u_xmywlx').getValue() == '8570000000000350') {
        if (totalprice != null && total + price > totalprice) {
            $NG.alert('设备清单价税合计的总额大于该项目的回款总金额，将不允许保存')
            lock = false
        }
    }
    useUpdateRows(({ args }) => {
        var gridTab = $NG.getCmpApi('p_form_zzcp_outbount_d'); //获取tab页数据
        const rows = args[0];
        rows.forEach((items) => {
            if (items.u_amt_vat_fc) {
                total += items.u_amt_vat_fc; //汇总数据

            }


        });
        args[0].forEach(async (element, index) => { });
    }, "p_form_zzcp_outbount_d");
    /**
     *@function:带出项目信息
     */
    function getPtInfoByPhid() {
        if (mstform.getItem("phid_pc").getValue()) {
            $NG.execServer(
                "getPtInfoByPhid",
                { phid: mstform.getItem("phid_pc").getValue() },
                function (res) {
                    const datas = JSON.parse(res.data)[0].extendObjects;
                    console.log(datas);

                    //帮助字段赋值
                    $NG.updateState((updater) => {
                        updater.data.p_form_zzcp_outbount_m.setProps({
                            // u_supply_att: datas.u_supply_att, //计划完工日期
                            // u_supply_name: datas.u_supply_name, //计划竣工日期
                            u_pc_name: datas.pc_no, //项目编码
                            phid_org: {
                                //事业部or组织
                                value: datas.org_phid,
                                label: datas.org_name,
                            },
                            u_regional_center: {
                                //区域中心
                                value: datas.regional_center_phid,
                                label: datas.regional_center_name,
                            },
                            u_product_line: {
                                //产品线
                                value: datas.midwife_phid,
                                label: datas.midwife_name,
                            },
                            u_division: {
                                //事业部
                                value: datas.division_phid,
                                label: datas.division_name,
                            },
                        });
                    });
                }
            );
            $NG.execServer(
                "getPtInfo2",
                { phid: mstform.getItem("phid_pc").getValue() },
                function (res) {
                    const datas = JSON.parse(res.data)[0].extendObjects;
                    console.log(datas);
                    let u_pc_tqsg1 = ''
                    if (datas.u_pc_tqsg == 1) {
                        u_pc_tqsg1 = 1
                    } else {
                        u_pc_tqsg1 = 2
                    }
                    //帮助字段赋值
                    $NG.updateState((updater) => {
                        updater.data.p_form_zzcp_outbount_m.setProps({
                            // u_supply_att: datas.u_supply_att, //计划完工日期
                            // u_supply_name: datas.u_supply_name, //计划竣工日期
                            u_pc_tqsg: u_pc_tqsg1, //项目编码
                            // u_xmywlx: datas.user_ywlx,
                            u_xmywlx: {
                                value: datas.user_ywlx,
                                label: datas.c_name,
                            },
                        });
                    });
                    setTimeout(() => {
                        skamt(datas.user_ywlx)
                    }, 200)
                }
            );
        }
    }
    setTimeout(() => {
        $NG.execServer(
            "getPtInfo2",
            { phid: mstform.getItem("phid_pc").getValue() },
            function (res) {
                if (res.count == 0) return
                const datas = JSON.parse(res.data)[0].extendObjects;
                console.log(datas);
                let u_pc_tqsg1 = ''
                if (datas.u_pc_tqsg == 1) {
                    u_pc_tqsg1 = 1
                } else {
                    u_pc_tqsg1 = 2
                }
                //帮助字段赋值
                $NG.updateState((updater) => {
                    updater.data.p_form_zzcp_outbount_m.setProps({
                        // u_supply_att: datas.u_supply_att, //计划完工日期
                        // u_supply_name: datas.u_supply_name, //计划竣工日期
                        u_pc_tqsg: u_pc_tqsg1, //项目编码
                        // u_xmywlx: datas.user_ywlx,
                        u_xmywlx: {
                            value: datas.user_ywlx,
                            label: datas.c_name,
                        },
                    });
                });
                setTimeout(() => {
                    skamt(datas.user_ywlx)
                }, 200)
            }
        );
    }, 300);
    /**
     *@function:过滤项目
     */
    function cntMFilter() {
        $NG.updateUI((updater, state) => {
            console.log(
                $NG.getCmpApi("p_form_zzcp_outbount_m").getItem("phid_pc").getValue(),
            );

            updater.form.p_form_zzcp_outbount_m.u_cnt_no.setProps({
                onBeforeOpen: async () => {
                    var phid_pc = $NG
                        .getCmpApi("p_form_zzcp_outbount_m")
                        .getItem("phid_pc")
                        .getValue();
                    if (!phid_pc) {
                        $NG.alert("请先选择项目");
                        return false;
                    } else {
                        return true;
                    }
                },
                ...(!!$NG
                    .getCmpApi("p_form_zzcp_outbount_m")
                    .getItem("phid_pc")
                    .getValue() && {
                    clientSqlFilter: {
                        bill_type: 1,
                        phid_pc: $NG
                            .getCmpApi("p_form_zzcp_outbount_m")
                            .getItem("phid_pc")
                            .getValue(),
                    },
                }),
            });
        });
    }
    /**
     *@license:带出订单编号
     */
    $NG.execServer("searchHtflag", { phid: mstform.getItem('u_cnt_no').getValue() }, function (res) {
        console.log(res);

        if (res.count == 0) {
            CRMlock = 2
            // $NG.alert('CRM中合同未评审完成无法发起该单据')
            return
        }
        const datas = JSON.parse(res.data)[0].extendObjects;
        console.log(datas, "user_crm_flag");
        if (datas.user_crm_flag == 2 || !datas.user_crm_flag) {
            CRMlock = 2
        } else if (datas.user_crm_flag == 0) {
            $NG.alert('CRM销售合同未评审完成，无法发起该业务')
            CRMlock = 2
        } else if (datas.user_crm_flag == 1) {
            $NG.alert('当前合同未推送K3，请推送成功后再发起该业务')
            CRMlock = 1
        }
    });
    useValuesChange(({ args }) => {
        console.log(args[0]);
        $NG.execServer("searchHtflag", { phid: mstform.getItem('u_cnt_no').getValue() }, function (res) {
            if (res.count == 0) {
                // $NG.alert('CRM中合同未评审完成无法发起该单据')
                CRMlock = 2
                return
            }
            const datas = JSON.parse(res.data)[0].extendObjects;
            console.log(datas, "user_crm_flag");
            if (datas.user_crm_flag == 2 || !datas.user_crm_flag) {
                CRMlock = 2
            } else if (datas.user_crm_flag == 0) {
                $NG.alert('CRM销售合同未评审完成，无法发起该业务')
                CRMlock = 2
            } else if (datas.user_crm_flag == 1) {
                $NG.alert('当前合同未推送K3，请推送成功后再发起该业务')
                CRMlock = 1
            }
        });
        $NG.updateState((updater) => {
            updater.data.p_form_zzcp_outbount_m.setProps({
                u_cnt_name: args[0].u_cnt_no.origin.bill_no,
                u_cnt_type: {
                    label: args[0].u_cnt_no.origin.htlx_name,
                    value: args[0].u_cnt_no.origin.cnt_type,
                },
            });
        });
    }, "p_form_zzcp_outbount_m.u_cnt_no");


    useUpdateRows(({ args }) => {
        console.log(args[0]);
        args[0].forEach((rowItem) => {
            computedV1(rowItem);
            computedV2(rowItem);
            total += rowItem.u_amt_vat_fc
            console.log(rowItem.u_amt_vat_fc, total);

        });
        if (mstform.getItem('u_xmywlx').getValue() == '8570000000000350') {
            if (totalprice != null && total + price > totalprice) {
                $NG.alert('设备清单价税合计的总额大于该项目的回款总金额，将不允许保存')
                lock = false
            }
        }
        dgrid.refreshView();
    }, "p_form_zzcp_outbount_d");
    useUpdateRow(({ args }) => {
        computedV1(args[0]);
        computedV2(args[0]);
        dgrid.refreshView();
    }, "p_form_zzcp_outbount_d");
    useBeforeClick(async function ({ args }) {
        console.log(total, 'total');
        console.log(totalprice, 'totalprice');
        console.log(lock, 'lock');

        if (CRMlock == 0) {
            $NG.alert('CRM销售合同未评审完成，无法发起该业务')
            return false
        } else if (CRMlock == 1) {
            $NG.alert('当前合同未推送K3，请推送成功后再发起该业务')
            return false
        } else if (CRMlock == 9) {
            $NG.alert('合同推送K3失败，请重新推送')
            return false
        }
        if (!isSbqdHkLock()) {
            return false
        }

        const phone = mstform.getItem("u_sl_phone").getValue()
        const regex = /^1[3-9]\d{9}$/;
        if (!regex.test(phone)) {
            $NG.alert("收料人手机号输入有误！")
            return false
        }
        if (window._catch_saveLock) {
            $NG.alert("当前项目没有仓库，请创建！")
            return false
        }
        const temp = dgrid.getRows().filter(item => {
            console.log(`当前行`, item.u_item_no_EXName, item.u_item_no_EXName.includes('信号机'));
            if (item.u_item_no_EXName.includes('信号机')) {
                return true
            } else {
                return false
            }
        })
        if (temp.length > 1) {
            $NG.alert("申请明细中不准出现2条或2条以上的 “信号机” 名称的物料！")
            return false
        }
    }, "save");

    /**
     *@function:计算逻辑
     */

    function computedV1(rowItem) {

        console.log('222222222222');

        const record = rowItem;
        console.log(record.u_item_no);

        $NG.execServer(
            "getItemInfoZZCP",
            { phid: record.u_item_no },
            function (res) {
                console.log(res.Code, "res");
                try {
                    const datas = JSON.parse(res.data)[0].extendObjects;
                    console.log(datas, "datas");
                    record.u_item_bm = datas.code;
                    record.u_wlfl = datas.phid_resbs;
                    record.u_wlfl_EXName = datas.name;
                    record.u_spec = datas.spec;
                    record.u_unit = datas.phid_unit;
                    record.u_unit_EXName = datas.msname;
                    dgrid.refreshView();
                } catch (error) { }
            }
        );
        $NG.execServer(
            "searchBm",
            { phid: record.u_item_no },
            function (res) {
                console.log(res.Code, "res");
                try {
                    const datas = JSON.parse(res.data)[0].extendObjects;
                    console.log(datas, "datas");
                    record.u_crm_no = datas.user_crm_no;
                    dgrid.refreshView();
                } catch (error) { }
            }
        );

        console.log(
            mstform.getItem("phid_pc").getValue(),
            record.u_item_no,
            1,
            "1111"
        );

        $NG.execServer(
            "getCountZZCP",
            { p: mstform.getItem("phid_pc").getValue(), i: record.u_item_no },
            function (res) {
                console.log(res.Code, "res");
                console.log(8570000000000022);
                try {
                    const datas = JSON.parse(res.data)[0].extendObjects;
                    console.log(datas.u_qty, "datas,getCountZZCP");
                    if (!datas.u_qty) {
                        record.u_yck_qyt = 0;
                    } else {
                        record.u_yck_qyt = datas.u_qty;
                    }

                    dgrid.refreshView();
                } catch (error) { }
            }
        );
    }
    function computedV2(rowItem) {
        const record = rowItem;

        // 提供默认值并确保为数字类型，防止字符串影响计算
        const u_qty = Number(record.u_qty) || 0; // 数量，默认为 0
        const u_prc_vat_fc = Number(record.u_prc_vat_fc) || 0; // 含税单价，默认为 0
        const u_tax_rate = Number(record.u_tax_rate) || 0; // 税率，默认为 0

        // 计算不含税单价
        const u_prc = u_prc_vat_fc / (1 + u_tax_rate);

        // 计算字段值
        const u_amt_vat = u_qty * u_prc_vat_fc; // 价税合计
        const u_amt = u_qty * u_prc; // 不含税金额
        const u_tax_amt = u_amt_vat - u_amt; // 税额
        const u_amt_vat_fc = u_amt_vat; // 价税合计（与 u_amt_vat 相同）

        // 更新 record 对象
        Object.assign(record, {
            u_prc,
            u_amt_vat,
            u_amt,
            u_tax_amt,
            u_amt_vat_fc,
        });
    }

    // 判断有没有仓库
    (page.oType == 'add' || page.oType == 'edit') && isCalculating()
    function isCalculating() {
        const pc = mstform.getItem("phid_pc").getValue()
        $NG.execServer("getCkByPhidPc", { pc }, (res) => {
            if (res.count == 0) {
                window._catch_saveLock = true
                $NG.alert("该项目下没有仓库，您将无法保存请创建仓库并仓库初始确认！")
            } else {
                window._catch_saveLock = false
            }
        })
    }
});
// getItemInfoZZCP; 物料查询sql使用
